home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2009 February / PCWFEB09.iso / Software / Resources / Chat & Communication / Digsby build 37 / digsby_setup.exe / lib / sre_constants.pyo (.txt) < prev    next >
Python Compiled Bytecode  |  2008-10-13  |  6KB  |  223 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyo (Python 2.5)
  3.  
  4. MAGIC = 20031017
  5. MAXREPEAT = 65535
  6.  
  7. class error(Exception):
  8.     pass
  9.  
  10. FAILURE = 'failure'
  11. SUCCESS = 'success'
  12. ANY = 'any'
  13. ANY_ALL = 'any_all'
  14. ASSERT = 'assert'
  15. ASSERT_NOT = 'assert_not'
  16. AT = 'at'
  17. BIGCHARSET = 'bigcharset'
  18. BRANCH = 'branch'
  19. CALL = 'call'
  20. CATEGORY = 'category'
  21. CHARSET = 'charset'
  22. GROUPREF = 'groupref'
  23. GROUPREF_IGNORE = 'groupref_ignore'
  24. GROUPREF_EXISTS = 'groupref_exists'
  25. IN = 'in'
  26. IN_IGNORE = 'in_ignore'
  27. INFO = 'info'
  28. JUMP = 'jump'
  29. LITERAL = 'literal'
  30. LITERAL_IGNORE = 'literal_ignore'
  31. MARK = 'mark'
  32. MAX_REPEAT = 'max_repeat'
  33. MAX_UNTIL = 'max_until'
  34. MIN_REPEAT = 'min_repeat'
  35. MIN_UNTIL = 'min_until'
  36. NEGATE = 'negate'
  37. NOT_LITERAL = 'not_literal'
  38. NOT_LITERAL_IGNORE = 'not_literal_ignore'
  39. RANGE = 'range'
  40. REPEAT = 'repeat'
  41. REPEAT_ONE = 'repeat_one'
  42. SUBPATTERN = 'subpattern'
  43. MIN_REPEAT_ONE = 'min_repeat_one'
  44. AT_BEGINNING = 'at_beginning'
  45. AT_BEGINNING_LINE = 'at_beginning_line'
  46. AT_BEGINNING_STRING = 'at_beginning_string'
  47. AT_BOUNDARY = 'at_boundary'
  48. AT_NON_BOUNDARY = 'at_non_boundary'
  49. AT_END = 'at_end'
  50. AT_END_LINE = 'at_end_line'
  51. AT_END_STRING = 'at_end_string'
  52. AT_LOC_BOUNDARY = 'at_loc_boundary'
  53. AT_LOC_NON_BOUNDARY = 'at_loc_non_boundary'
  54. AT_UNI_BOUNDARY = 'at_uni_boundary'
  55. AT_UNI_NON_BOUNDARY = 'at_uni_non_boundary'
  56. CATEGORY_DIGIT = 'category_digit'
  57. CATEGORY_NOT_DIGIT = 'category_not_digit'
  58. CATEGORY_SPACE = 'category_space'
  59. CATEGORY_NOT_SPACE = 'category_not_space'
  60. CATEGORY_WORD = 'category_word'
  61. CATEGORY_NOT_WORD = 'category_not_word'
  62. CATEGORY_LINEBREAK = 'category_linebreak'
  63. CATEGORY_NOT_LINEBREAK = 'category_not_linebreak'
  64. CATEGORY_LOC_WORD = 'category_loc_word'
  65. CATEGORY_LOC_NOT_WORD = 'category_loc_not_word'
  66. CATEGORY_UNI_DIGIT = 'category_uni_digit'
  67. CATEGORY_UNI_NOT_DIGIT = 'category_uni_not_digit'
  68. CATEGORY_UNI_SPACE = 'category_uni_space'
  69. CATEGORY_UNI_NOT_SPACE = 'category_uni_not_space'
  70. CATEGORY_UNI_WORD = 'category_uni_word'
  71. CATEGORY_UNI_NOT_WORD = 'category_uni_not_word'
  72. CATEGORY_UNI_LINEBREAK = 'category_uni_linebreak'
  73. CATEGORY_UNI_NOT_LINEBREAK = 'category_uni_not_linebreak'
  74. OPCODES = [
  75.     FAILURE,
  76.     SUCCESS,
  77.     ANY,
  78.     ANY_ALL,
  79.     ASSERT,
  80.     ASSERT_NOT,
  81.     AT,
  82.     BRANCH,
  83.     CALL,
  84.     CATEGORY,
  85.     CHARSET,
  86.     BIGCHARSET,
  87.     GROUPREF,
  88.     GROUPREF_EXISTS,
  89.     GROUPREF_IGNORE,
  90.     IN,
  91.     IN_IGNORE,
  92.     INFO,
  93.     JUMP,
  94.     LITERAL,
  95.     LITERAL_IGNORE,
  96.     MARK,
  97.     MAX_UNTIL,
  98.     MIN_UNTIL,
  99.     NOT_LITERAL,
  100.     NOT_LITERAL_IGNORE,
  101.     NEGATE,
  102.     RANGE,
  103.     REPEAT,
  104.     REPEAT_ONE,
  105.     SUBPATTERN,
  106.     MIN_REPEAT_ONE]
  107. ATCODES = [
  108.     AT_BEGINNING,
  109.     AT_BEGINNING_LINE,
  110.     AT_BEGINNING_STRING,
  111.     AT_BOUNDARY,
  112.     AT_NON_BOUNDARY,
  113.     AT_END,
  114.     AT_END_LINE,
  115.     AT_END_STRING,
  116.     AT_LOC_BOUNDARY,
  117.     AT_LOC_NON_BOUNDARY,
  118.     AT_UNI_BOUNDARY,
  119.     AT_UNI_NON_BOUNDARY]
  120. CHCODES = [
  121.     CATEGORY_DIGIT,
  122.     CATEGORY_NOT_DIGIT,
  123.     CATEGORY_SPACE,
  124.     CATEGORY_NOT_SPACE,
  125.     CATEGORY_WORD,
  126.     CATEGORY_NOT_WORD,
  127.     CATEGORY_LINEBREAK,
  128.     CATEGORY_NOT_LINEBREAK,
  129.     CATEGORY_LOC_WORD,
  130.     CATEGORY_LOC_NOT_WORD,
  131.     CATEGORY_UNI_DIGIT,
  132.     CATEGORY_UNI_NOT_DIGIT,
  133.     CATEGORY_UNI_SPACE,
  134.     CATEGORY_UNI_NOT_SPACE,
  135.     CATEGORY_UNI_WORD,
  136.     CATEGORY_UNI_NOT_WORD,
  137.     CATEGORY_UNI_LINEBREAK,
  138.     CATEGORY_UNI_NOT_LINEBREAK]
  139.  
  140. def makedict(list):
  141.     d = { }
  142.     i = 0
  143.     for item in list:
  144.         d[item] = i
  145.         i = i + 1
  146.     
  147.     return d
  148.  
  149. OPCODES = makedict(OPCODES)
  150. ATCODES = makedict(ATCODES)
  151. CHCODES = makedict(CHCODES)
  152. OP_IGNORE = {
  153.     GROUPREF: GROUPREF_IGNORE,
  154.     IN: IN_IGNORE,
  155.     LITERAL: LITERAL_IGNORE,
  156.     NOT_LITERAL: NOT_LITERAL_IGNORE }
  157. AT_MULTILINE = {
  158.     AT_BEGINNING: AT_BEGINNING_LINE,
  159.     AT_END: AT_END_LINE }
  160. AT_LOCALE = {
  161.     AT_BOUNDARY: AT_LOC_BOUNDARY,
  162.     AT_NON_BOUNDARY: AT_LOC_NON_BOUNDARY }
  163. AT_UNICODE = {
  164.     AT_BOUNDARY: AT_UNI_BOUNDARY,
  165.     AT_NON_BOUNDARY: AT_UNI_NON_BOUNDARY }
  166. CH_LOCALE = {
  167.     CATEGORY_DIGIT: CATEGORY_DIGIT,
  168.     CATEGORY_NOT_DIGIT: CATEGORY_NOT_DIGIT,
  169.     CATEGORY_SPACE: CATEGORY_SPACE,
  170.     CATEGORY_NOT_SPACE: CATEGORY_NOT_SPACE,
  171.     CATEGORY_WORD: CATEGORY_LOC_WORD,
  172.     CATEGORY_NOT_WORD: CATEGORY_LOC_NOT_WORD,
  173.     CATEGORY_LINEBREAK: CATEGORY_LINEBREAK,
  174.     CATEGORY_NOT_LINEBREAK: CATEGORY_NOT_LINEBREAK }
  175. CH_UNICODE = {
  176.     CATEGORY_DIGIT: CATEGORY_UNI_DIGIT,
  177.     CATEGORY_NOT_DIGIT: CATEGORY_UNI_NOT_DIGIT,
  178.     CATEGORY_SPACE: CATEGORY_UNI_SPACE,
  179.     CATEGORY_NOT_SPACE: CATEGORY_UNI_NOT_SPACE,
  180.     CATEGORY_WORD: CATEGORY_UNI_WORD,
  181.     CATEGORY_NOT_WORD: CATEGORY_UNI_NOT_WORD,
  182.     CATEGORY_LINEBREAK: CATEGORY_UNI_LINEBREAK,
  183.     CATEGORY_NOT_LINEBREAK: CATEGORY_UNI_NOT_LINEBREAK }
  184. SRE_FLAG_TEMPLATE = 1
  185. SRE_FLAG_IGNORECASE = 2
  186. SRE_FLAG_LOCALE = 4
  187. SRE_FLAG_MULTILINE = 8
  188. SRE_FLAG_DOTALL = 16
  189. SRE_FLAG_UNICODE = 32
  190. SRE_FLAG_VERBOSE = 64
  191. SRE_FLAG_DEBUG = 128
  192. SRE_INFO_PREFIX = 1
  193. SRE_INFO_LITERAL = 2
  194. SRE_INFO_CHARSET = 4
  195. if __name__ == '__main__':
  196.     
  197.     def dump(f, d, prefix):
  198.         items = d.items()
  199.         items.sort(key = (lambda a: a[1]))
  200.         for k, v in items:
  201.             f.write('#define %s_%s %s\n' % (prefix, k.upper(), v))
  202.         
  203.  
  204.     f = open('sre_constants.h', 'w')
  205.     f.write("/*\n * Secret Labs' Regular Expression Engine\n *\n * regular expression matching engine\n *\n * NOTE: This file is generated by sre_constants.py.  If you need\n * to change anything in here, edit sre_constants.py and run it.\n *\n * Copyright (c) 1997-2001 by Secret Labs AB.  All rights reserved.\n *\n * See the _sre.c file for information on usage and redistribution.\n */\n\n")
  206.     f.write('#define SRE_MAGIC %d\n' % MAGIC)
  207.     dump(f, OPCODES, 'SRE_OP')
  208.     dump(f, ATCODES, 'SRE')
  209.     dump(f, CHCODES, 'SRE')
  210.     f.write('#define SRE_FLAG_TEMPLATE %d\n' % SRE_FLAG_TEMPLATE)
  211.     f.write('#define SRE_FLAG_IGNORECASE %d\n' % SRE_FLAG_IGNORECASE)
  212.     f.write('#define SRE_FLAG_LOCALE %d\n' % SRE_FLAG_LOCALE)
  213.     f.write('#define SRE_FLAG_MULTILINE %d\n' % SRE_FLAG_MULTILINE)
  214.     f.write('#define SRE_FLAG_DOTALL %d\n' % SRE_FLAG_DOTALL)
  215.     f.write('#define SRE_FLAG_UNICODE %d\n' % SRE_FLAG_UNICODE)
  216.     f.write('#define SRE_FLAG_VERBOSE %d\n' % SRE_FLAG_VERBOSE)
  217.     f.write('#define SRE_INFO_PREFIX %d\n' % SRE_INFO_PREFIX)
  218.     f.write('#define SRE_INFO_LITERAL %d\n' % SRE_INFO_LITERAL)
  219.     f.write('#define SRE_INFO_CHARSET %d\n' % SRE_INFO_CHARSET)
  220.     f.close()
  221.     print 'done'
  222.  
  223.